Flexible selection of security features in mobile networks

ABSTRACT

Various communication systems may benefit from appropriate security measures. For example, mobile networks may benefit from the flexible selection of security features. A method can include receiving an attach request. The method can also include sending a response to the request. The response can include information configured to allow selection of a control plane integrity algorithm independently of a user plane integrity algorithm.

CROSS-REFERENCE TO RELATED APPLICATION

This application is related to and claims the benefit and priority ofU.S. Provisional Patent Application No. 62/278,801, filed on Jan. 14,2016, the entirety of which is hereby incorporated herein by reference.

BACKGROUND Field

Various communication systems may benefit from appropriate securitymeasures. For example, mobile networks may benefit from the flexibleselection of security features.

Description of the Related Art

Existing security negotiation mechanisms can be found in the thirdgeneration partnership project (3GPP) technical specification (TS)43.020 for global system for mobile communication (GSM) and generalpacket radio service (GPRS), in 3GPP TS 33.102 for universal mobiletelecommunication system (UMTS), and in 3GPP TS 33.401 for evolvedpacket system (EPS). Each of 3GPP TS 43.020, 3GPP TS 33.102, and 3GPP TS33.401 is hereby incorporated herein by reference. The securitynegotiation mechanisms in these specifications include so-calledCiphering Mode messages or Security Mode messages, respectively. Thecurrent agreements on extended coverage GPRS (EC-GPRS) security can befound in 3GPP TR 33.860, v1.0.0, which is also incorporated herein byreference.

The existing security negotiation mechanisms between UE and network havethe serving network node (base transceiver station (BTS), serving GPRSsupport node (SGSN), radio network controller (RNC), evolved node B(eNB), or mobility management entity (MME), for examples) select onealgorithm each for ciphering and, in third generation (3G) and fourthgeneration (4G), integrity. This selection is based on a prioritizedlist of algorithms supported by the serving node itself and by thealgorithms sent by the UE in the UE capabilities. UE is called mobilestation (MS) in second generation (2G). No distinction is being madebetween control plane and user plane.

FIG. 1 illustrates a current state of security negotiation. This is FIG.6.1.3-1 of 3GPP documents S3b0008 and S3b0013. Message 4 in FIG. 1 showsone cipher algorithm and one integrity algorithm that was selected bythe SGSN and is sent back to the MS, in accordance with what iscurrently specified in 3GPP TS 24.008.

UP integrity in relay nodes is another issue addressed by standards. Forrelay nodes in EPS, it is stated in 3GPP TS 33.401, clause 7.2.4.1, that“User plane integrity shall be applied to a data radio bearer ifintegrity protection is configured for that data radio bearer at thetime of data radio bearer set-up.” This means that UP integrity is notnegotiated in a protocol, but configured.

SUMMARY

According to a first embodiment, a method can include receiving anattach request. The method can also include sending a response to therequest. The response can include information configured to allowselection of a control plane integrity algorithm independently of a userplane integrity algorithm.

In a variant, the response can include information configured to allowselection of a non-null integrity algorithm for the control plane and anull integrity algorithm for the user plane.

In a variant the information in the response can be configured toidentify only one selected integrity algorithm together with anindication of whether the selected integrity algorithm is to be used forboth control plane integrity and user plane integrity or for only one ofcontrol plane integrity or user plane integrity.

In a variant, the request can include a list of integrity algorithmstogether with a plurality of identifiers, each identifier indicating fora corresponding integrity algorithm whether the integrity algorithm isto be used for both control plane integrity and user plane integrity orfor only one of control plane integrity or user plane integrity.

In a variant, the request can include a list of integrity algorithmstogether with a single identifier indicating for the list whether theintegrity algorithms are to be used for both control plane integrity anduser plane integrity or for only one of control plane integrity or userplane integrity.

In a variant, the request can include indicators configured to indicatefor control plane and user plane separately and for confidentiality andintegrity separately, whether a respective security feature is requiredfrom a user equipment perspective.

In a variant, the request can include information regarding integrityalgorithm(s) in the “MS network capability” information element of therequest.

According to a second embodiment, a method can include receiving aresponse to an attach request, the response comprising information. Themethod can also include selecting a control plane integrity algorithmindependently of a user plane integrity algorithm based on theinformation in the response.

The second embodiment may also include the variants of the firstembodiment.

According to third and fourth embodiments, an apparatus can includemeans for performing the method according to the first and secondembodiments respectively, in any of their variants.

According to fifth and sixth embodiments, an apparatus can include atleast one processor and at least one memory and computer program code.The at least one memory and the computer program code can be configuredto, with the at least one processor, cause the apparatus at least toperform the method according to the first and second embodimentsrespectively, in any of their variants.

According to seventh and eighth embodiments, a computer program productmay encode instructions for performing a process including the methodaccording to the first and second embodiments respectively, in any oftheir variants.

According to ninth and tenth embodiments, a non-transitory computerreadable medium may encode instructions that, when executed in hardware,perform a process including the method according to the first and secondembodiments respectively, in any of their variants.

According to tenth and eleventh embodiments, a system may include atleast one apparatus according to the third or fifth embodiments incommunication with at least one apparatus according to the fourth orsixth embodiments, respectively in any of their variants.

BRIEF DESCRIPTION OF THE DRAWINGS

For proper understanding of the invention, reference should be made tothe accompanying drawings, wherein:

FIG. 1 illustrates a current state of security negotiation.

FIG. 2 illustrates security negotiations according to certainembodiments.

FIG. 3 illustrates a method according to certain embodiments.

FIG. 4 illustrates a system according to certain embodiments.

DETAILED DESCRIPTION:

Certain embodiments relate to security for mobile communicationnetworks. Such security may be of value for GPRS, enhanced for thepurposes of the Cellular Internet of Things (CIoT), also known asEC-GPRS. Certain embodiments, however, may also apply to other mobilecommunication networks as well, such as for 5G security.

Certain embodiments may address the issue of integrity protection of theuser plane (UP). No 3GPP-defined network, neither GSM nor GPRS nor UMTSnor EPS, currently provides this security feature for the radiointerface extending from the user equipment (UE). UP integrity may beavailable for data radio bearers between a relay node and a donor eNB.

While neither GSM nor GPRS provide any form of integrity protection,UMTS and EPS do provide integrity protection of the control plane (CP)between UE and serving node.

Certain embodiments may permit selection of security features flexibly,in accordance with the needs of each use case. For example, in one usecase, confidentiality and UP integrity protection may not be needed atthe network layer if they are provided at the application layer, whileCP integrity may still be needed to prevent false base station attacks.In another use case, such as for the IoT, application layer security maynot be able to be provided because it may be too expensive in terms ofbattery-life and the battery of the mobile device may be veryconstrained. Thus, both confidentiality and integrity may have to beprovided for both CP and UP at the network layer. In yet another usecase, confidentiality may not be allowed by regulations, CP integritymay be needed, while UP integrity may or may not be desired.

Nevertheless, current security negotiation mechanisms between the UE andthe network do not support negotiation of a security feature separatelyfor control plane and user plane. By contrast, certain embodiments maypermit activation of CP integrity and UP integrity independently. Thus,it is possible that there may be use cases where there is UP integrity,but not CP integrity, CP integrity alone, or both, CP and UP integrity,although the latter two cases may be more common.

Certain embodiments modify a response sent by a serving node in asecurity negotiation procedure. For example, according to a firstoption, the response can be modified in such a way that the responseincludes information that allows selecting integrity algorithms for theuser plane and for the control plane separately. This could also meanthat a non-null integrity algorithm is selected for the CP and a nullintegrity algorithm is selected for the UP. A null integrity algorithmcan simply be that no integrity algorithm is selected.

For another example, according to a second option, the response can bemodified in such a way that only one selected integrity algorithm isindicated, together with an indication whether the selected integrityalgorithm is to be used for both CP and UP, or only for one of CP andUP.

For a further example, according to a third option, the request can bemodified in such a way that the UE capabilities or MS capabilitiesadditionally include integrity algorithms supported for the UP and theCP separately. This may also take the form of indicators, one for eachintegrity algorithm, telling whether the algorithm applies to UP and/orCP or both. Or it may take the form of listing all integrity algorithmssupported by the UE or MS together with one indicator telling whetherthey all apply to the CP only, or the CP and the UP, or the UP only.There may be UEs or MSs that support CP integrity, but not UP integrity,as noted above.

According to a fourth example option, the request can be modified insuch a way that the UE capabilities or MS capabilities additionallyinclude indicators that indicate for CP and UP separately, and forconfidentiality and integrity separately, whether a given securityfeature is required from the UE perspective or not. Not all possibleindicators need to be present.

While some UEs may abort communication when the network does notprovide, for example, CP integrity, in certain environments, where therequirement of CP integrity is implicitly given, the correspondingindicator may not be needed.

Other UEs may indicate support for network layer ciphering algorithms,but may not require confidentiality from the network as confidentialityis provided at the application layer. Such UEs may not mind, however, ifthe network decided to apply confidentiality.

Thus, in certain embodiments, each of the four above-described optionsmay be present or they may be implemented selectively, either alone orin combination with one or more of the other options.

The following examples illustrate how a subset of the above-describedfeatures can be applied to EC-GRPS security. The remainder of theabove-described features not applied to EC-GPRS may be useful in 5Gsecurity. In 5G implementations, the user equipment may send itscapabilities to the network, and the network may select the securityfeatures and algorithms.

FIG. 2 illustrates security negotiations according to certainembodiments. FIG. 2 is based on FIG. 1, discussed above. In thisexample, two changes may be present. In message 1, “Attach Request(identity, MS network capability)” the “MS network capability” caninclude an additional bit (shown separately). This additional “Userplane Integrity Supported” bit (UIS bit) can have the following meaning:if the UIS bit is set then the MS supports user plane integrity with allthe integrity algorithms listed in the MS network capability, otherwisethe MS does not support user plane integrity at all. This may implementthe third option discussed above.

For EC-GPRS, the MS may not need to indicate whether it requires UPintegrity. The network can decide based on other information whether UPintegrity is selected, for example based on information in a subscriberprofile.

Additionally, message 4, “Authentication and ciphering request (RAND,AUTN, cipher algorithm, integrity algorithm, MS network capability)MAC-I-1,” can include an additional bit (shown separately). Thisadditional “User plane Integrity Applied” bit (UIA bit) can have thefollowing meaning: if the UIA bit is set then the eSGSN instructs the MSto apply both CP integrity and UP integrity with the integrity algorithmincluded in message 4, otherwise only CP integrity is to be applied.This may implement the second option discussed above.

Certain embodiment may provide various benefits and/or advantages. Forexample, certain embodiments may provide desirable flexibility in theselection of security features by the network. Moreover, certainembodiments may allow more flexible expression of what security featuresthe UE or MS supports and/or requires.

FIG. 3 illustrates a method according to certain embodiments. As shownin FIG. 3, a method can include, at 310, sending an attach request by adevice such as a user equipment or mobile station. An attach request isone example of a request message that could be sent. Other kinds ofrequest messages are also permitted. The method can further include, at315, receiving the request at a network element, such as a basetransceiver station, SGSN, or evolved Node B.

The method can also include, at 325, sending a response to the request.The response can include information configured to allow selection of acontrol plane integrity algorithm independently of a user planeintegrity algorithm. This situation of allowing selection of a controlplane integrity algorithm independently of a user plane integrityalgorithm can encompass a variety of situations, including a case inwhich a non-null integrity algorithm can be selected for the controlplane and a null integrity algorithm can be selected for the user plane.

The information in the response can be configured to identify only oneselected integrity algorithm together with an indication of whether theselected integrity algorithm is to be used for both control planeintegrity and user plane integrity or for only one of control planeintegrity or user plane integrity.

Alternatively, or in addition, the request can include algorithminformation. For example, the request can include a list of integrityalgorithms. The request can include a plurality of identifiers, eachidentifier indicating for a corresponding integrity algorithm whetherthe integrity algorithm is to be used for both control plane integrityand user plane integrity or for only one of control plane integrity oruser plane integrity. Alternatively, the request can include a singleidentifier indicating for the list whether the integrity algorithms areto be used for both control plane integrity and user plane integrity orfor only one of control plane integrity or user plane integrity.

The request can include indicators configured to indicate for controlplane and user plane separately and for confidentiality and integrityseparately, whether a respective security feature is required from auser equipment perspective.

The method can also include, at 320, receiving the response to theattach request. The method can further include, at 330, selecting acontrol plane integrity algorithm independently of a user planeintegrity algorithm based on the information in the response.

FIG. 4 illustrates a system according to certain embodiments of theinvention. It should be understood that each block of the flowchart ofFIG. 3 may be implemented by various means or their combinations, suchas hardware, software, firmware, one or more processors and/orcircuitry. In one embodiment, a system may include several devices, suchas, for example, network element 410 and user equipment (UE) or userdevice 420. The system may include more than one UE 420 and more thanone network element 410, although only one of each is shown for thepurposes of illustration. A network element can be an access point, abase station, an eNode B (eNB), or any other network element, such as anSGSN, MME, BTS, or the like.

Each of these devices may include at least one processor or control unitor module, respectively indicated as 414 and 424. At least one memorymay be provided in each device, and indicated as 415 and 425,respectively. The memory may include computer program instructions orcomputer code contained therein, for example for carrying out theembodiments described above. One or more transceiver 416 and 426 may beprovided, and each device may also include an antenna, respectivelyillustrated as 417 and 427. Although only one antenna each is shown,many antennas and multiple antenna elements may be provided to each ofthe devices. Other configurations of these devices, for example, may beprovided. For example, network element 410 and UE 420 may beadditionally configured for wired communication, in addition to wirelesscommunication, and in such a case antennas 417 and 427 may illustrateany form of communication hardware, without being limited to merely anantenna.

Transceivers 416 and 426 may each, independently, be a transmitter, areceiver, or both a transmitter and a receiver, or a unit or device thatmay be configured both for transmission and reception. The transmitterand/or receiver (as far as radio parts are concerned) may also beimplemented as a remote radio head which is not located in the deviceitself, but in a mast, for example. It should also be appreciated thataccording to the “liquid” or flexible radio concept, the operations andfunctionalities may be performed in different entities, such as nodes,hosts or servers, in a flexible manner. In other words, division oflabor may vary case by case. One possible use is to make a networkelement to deliver local content. One or more functionalities may alsobe implemented as a virtual application that is provided as softwarethat can run on a server.

A user device or user equipment 420 may be a mobile station (MS) such asa mobile phone or smart phone or multimedia device, a computer, such asa tablet, provided with wireless communication capabilities, personaldata or digital assistant (PDA) provided with wireless communicationcapabilities, portable media player, digital camera, pocket videocamera, navigation unit provided with wireless communicationcapabilities or any combinations thereof. The user device or userequipment 420 may be a sensor or smart meter, or other device that mayusually be configured for a single location.

In an exemplifying embodiment, an apparatus, such as a node or userdevice, may include means for carrying out embodiments described abovein relation to FIGS. 2 and 3.

Processors 414 and 424 may be embodied by any computational or dataprocessing device, such as a central processing unit (CPU), digitalsignal processor (DSP), application specific integrated circuit (ASIC),programmable logic devices (PLDs), field programmable gate arrays(FPGAs), digitally enhanced circuits, or comparable device or acombination thereof. The processors may be implemented as a singlecontroller, or a plurality of controllers or processors. Additionally,the processors may be implemented as a pool of processors in a localconfiguration, in a cloud configuration, or in a combination thereof.

For firmware or software, the implementation may include modules or unitof at least one chip set (e.g., procedures, functions, and so on).Memories 415 and 425 may independently be any suitable storage device,such as a non-transitory computer-readable medium. A hard disk drive(HDD), random access memory (RAM), flash memory, or other suitablememory may be used. The memories may be combined on a single integratedcircuit as the processor, or may be separate therefrom. Furthermore, thecomputer program instructions may be stored in the memory and which maybe processed by the processors can be any suitable form of computerprogram code, for example, a compiled or interpreted computer programwritten in any suitable programming language. The memory or data storageentity is typically internal but may also be external or a combinationthereof, such as in the case when additional memory capacity is obtainedfrom a service provider. The memory may be fixed or removable.

The memory and the computer program instructions may be configured, withthe processor for the particular device, to cause a hardware apparatussuch as network element 410 and/or UE 420, to perform any of theprocesses described above (see, for example, FIGS. 2 and 3). Therefore,in certain embodiments, a non-transitory computer-readable medium may beencoded with computer instructions or one or more computer program (suchas added or updated software routine, applet or macro) that, whenexecuted in hardware, may perform a process such as one of the processesdescribed herein. Computer programs may be coded by a programminglanguage, which may be a high-level programming language, such asobjective-C, C, C++, C#, Java, etc., or a low-level programminglanguage, such as a machine language, or assembler. Alternatively,certain embodiments of the invention may be performed entirely inhardware.

Furthermore, although FIG. 4 illustrates a system including a networkelement 410 and a UE 420, embodiments of the invention may be applicableto other configurations, and configurations involving additionalelements, as illustrated and discussed herein. For example, multipleuser equipment devices and multiple network elements may be present, orother nodes providing similar functionality, such as nodes that combinethe functionality of a user equipment and an access point.

One having ordinary skill in the art will readily understand that theinvention as discussed above may be practiced with steps in a differentorder, and/or with hardware elements in configurations which aredifferent than those which are disclosed. Therefore, although theinvention has been described based upon these preferred embodiments, itwould be apparent to those of skill in the art that certainmodifications, variations, and alternative constructions would beapparent, while remaining within the spirit and scope of the invention.

LIST OF ABBREVIATIONS

CIoT Cellular IoT

CP Control Plane

eSGSN enhanced Serving GPRS Support node

GPRS General Packet Radio Service

MS Mobile Station

SGSN Serving GPRS Support node

UE User Equipment

UP User Plane

1. A method, comprising: receiving a request; and sending a response tothe request, wherein the response comprises information configured toallow selection of a control plane integrity algorithm independently ofa user plane integrity algorithm.
 2. The method of claim 1, wherein theresponse comprises information configured to allow selection of anon-null integrity algorithm for the control plane and a null integrityalgorithm for the user plane.
 3. The method of claim 2, wherein theinformation in the response is configured to identify only one selectedintegrity algorithm together with an indication of whether the selectedintegrity algorithm is to be used for both control plane integrity anduser plane integrity or for only one of control plane integrity or userplane integrity.
 4. The method of claim 1, wherein the request comprisesa list of integrity algorithms together with a plurality of identifiers,each identifier indicating for a corresponding integrity algorithmwhether the integrity algorithm is to be used for both control planeintegrity and user plane integrity or for only one of control planeintegrity or user plane integrity.
 5. The method of claim 1, wherein therequest comprises a list of integrity algorithms together with a singleidentifier indicating for the list whether the integrity algorithms areto be used for both control plane integrity and user plane integrity orfor only one of control plane integrity or user plane integrity.
 6. Themethod of claim 1, wherein the request comprises indicators configuredto indicate for control plane and user plane separately and forconfidentiality and integrity separately, whether a respective securityfeature is required from a user equipment perspective.
 7. The method ofclaim 1, wherein the request comprises information regarding integrityalgorithm(s) in the MS network capability information element of therequest.
 8. The method of claim 1, wherein the request comprises anattach request.
 9. A method, comprising: receiving a response to arequest, the response comprising information; and selecting a controlplane integrity algorithm independently of a user plane integrityalgorithm based on the information in the response.
 10. The method ofclaim 9, wherein the response comprises information configured to allowselection of a non-null integrity algorithm for the control plane and anull integrity algorithm for the user plane.
 11. The method of claim 10,wherein the information in the response is configured to identify onlyone selected integrity algorithm together with an indication of whetherthe selected integrity algorithm is to be used for both control planeintegrity and user plane integrity or for only one of control planeintegrity or user plane integrity.
 12. The method of claim 9, whereinthe request comprises a list of integrity algorithms together with aplurality of identifiers, each identifier indicating for a correspondingintegrity algorithm whether the integrity algorithm is to be used forboth control plane integrity and user plane integrity or for only one ofcontrol plane integrity or user plane integrity.
 13. The method of claim9, wherein the request comprises a list of integrity algorithms togetherwith a single identifier indicating for the list whether the integrityalgorithms are to be used for both control plane integrity and userplane integrity or for only one of control plane integrity or user planeintegrity.
 14. The method of claim 9, wherein the request comprisesindicators configured to indicate for control plane and user planeseparately and for confidentiality and integrity separately, whether arespective security feature is required from a user equipmentperspective.
 15. The method of claim 9, wherein the request comprisesinformation regarding integrity algorithm(s) in the “MS networkcapability” information element of the request.
 16. The method of claim9, wherein the request comprises an attach request. 17.-32. (canceled)33. An apparatus, comprising: at least one processor; and at least onememory including computer program code, wherein the at least one memoryand the computer program code are configured to, with the at least oneprocessor, cause the apparatus at least to receive a request; and send aresponse to the request, wherein the response comprises informationconfigured to allow selection of a control plane integrity algorithmindependently of a user plane integrity algorithm.
 34. The apparatus ofclaim 33, wherein the response comprises information configured to allowselection of a non-null integrity algorithm for the control plane and anull integrity algorithm for the user plane.
 35. The apparatus of claim34, wherein the information in the response is configured to identifyonly one selected integrity algorithm together with an indication ofwhether the selected integrity algorithm is to be used for both controlplane integrity and user plane integrity or for only one of controlplane integrity or user plane integrity.
 36. The apparatus of claim 33,wherein the request comprises a list of integrity algorithms togetherwith a plurality of identifiers, each identifier indicating for acorresponding integrity algorithm whether the integrity algorithm is tobe used for both control plane integrity and user plane integrity or foronly one of control plane integrity or user plane integrity.
 37. Theapparatus of claim 33, wherein the request comprises a list of integrityalgorithms together with a single identifier indicating for the listwhether the integrity algorithms are to be used for both control planeintegrity and user plane integrity or for only one of control planeintegrity or user plane integrity.
 38. The apparatus of claim 33,wherein the request comprises indicators configured to indicate forcontrol plane and user plane separately and for confidentiality andintegrity separately, whether a respective security feature is requiredfrom a user equipment perspective.
 39. The apparatus of claim 33,wherein the request comprises information regarding integrityalgorithm(s) in the MS network capability information element of therequest.
 40. The apparatus of claim 33, wherein the request comprises anattach request.
 41. An apparatus, comprising: at least one processor;and at least one memory including computer program code, wherein the atleast one memory and the computer program code are configured to, withthe at least one processor, cause the apparatus at least to receive aresponse to a request, the response comprising information; and select acontrol plane integrity algorithm independently of a user planeintegrity algorithm based on the information in the response.
 42. Theapparatus of claim 41, wherein the response comprises informationconfigured to allow selection of a non-null integrity algorithm for thecontrol plane and a null integrity algorithm for the user plane.
 43. Theapparatus of claim 42, wherein the information in the response isconfigured to identify only one selected integrity algorithm togetherwith an indication of whether the selected integrity algorithm is to beused for both control plane integrity and user plane integrity or foronly one of control plane integrity or user plane integrity.
 44. Theapparatus of claim 41, wherein the request comprises a list of integrityalgorithms together with a plurality of identifiers, each identifierindicating for a corresponding integrity algorithm whether the integrityalgorithm is to be used for both control plane integrity and user planeintegrity or for only one of control plane integrity or user planeintegrity.
 45. The apparatus of claim 41, wherein the request comprisesa list of integrity algorithms together with a single identifierindicating for the list whether the integrity algorithms are to be usedfor both control plane integrity and user plane integrity or for onlyone of control plane integrity or user plane integrity.
 46. Theapparatus of claim 41, wherein the request comprises indicatorsconfigured to indicate for control plane and user plane separately andfor confidentiality and integrity separately, whether a respectivesecurity feature is required from a user equipment perspective.
 47. Theapparatus of claim 41, wherein the request comprises informationregarding integrity algorithm(s) in the MS network capabilityinformation element of the request.
 48. The apparatus of claim 41,wherein the request comprises an attach request.
 49. A computer programproduct embodied on a non-transitory computer-readable medium, saidproduct including instructions for performing, when executed inhardware, the method according to claim
 1. 50. (canceled)
 51. A computerprogram product embodied on a non-transitory computer-readable medium,said product including instructions for performing, when executed inhardware, the method according to claim 9.